package com.yanqu.road.entity.log;

import com.yanqu.road.entity.FieldTypeAnnotation;

import java.util.Date;
import java.util.List;

@FieldTypeAnnotation(tableName = "t_l_ck_douluodalu_event_handle", desc = "斗罗/封神森林事件处理日志", autoSave = true, uploadCk = true)
public class LogDouLuoDaLuEventHandle extends ServerBaseLog {

    @FieldTypeAnnotation(desc = "活动id", isIndex = true)
    private int activityId;

    @FieldTypeAnnotation(desc = "玩家id", isIndex = true)
    private long userId;

    @FieldTypeAnnotation(desc = "队伍id")
    private int teamId;

    @FieldTypeAnnotation(desc = "所在区域id")
    private int regionId;

    @FieldTypeAnnotation(desc = "事件类型")
    private int eventType;

    @FieldTypeAnnotation(desc = "事件id")
    private int eventId;

    @FieldTypeAnnotation(desc = "处理类型(1攻击/接受;2标记;3绕过;4;协助攻击)")
    private int type;

    @FieldTypeAnnotation(desc = "目标id (如果是玩家事件记录玩家id，如果是藏金洞事件 记录触发的mallId) ")
    private long targetId;

    @FieldTypeAnnotation(desc = "探索时间")
    private int eventTime;

    @FieldTypeAnnotation(desc = "目标是否标记（0否1攻击2标记）")
    private int status;

    @FieldTypeAnnotation(desc = "攻击前血量")
    private long beforeAttackBlood;

    @FieldTypeAnnotation(desc = "攻击后血量")
    private long afterAttackBlood;

    @FieldTypeAnnotation(desc = "伤害")
    private long damage;

    @FieldTypeAnnotation(desc = "奖励")
    private String reward;

    @FieldTypeAnnotation(desc = "生效buff")
    private List<Integer> buffId;

    @FieldTypeAnnotation(desc = "获得积分")
    private long score;

    public LogDouLuoDaLuEventHandle(int activityId, long userId, int teamId, int regionId, int eventType, int eventId, int type, long targetId, int eventTime, int status,
                                    long beforeAttackBlood, long afterAttackBlood, long damage, String reward, List<Integer> buffId, long score) {
        this.activityId = activityId;
        this.userId = userId;
        this.teamId = teamId;
        this.regionId = regionId;
        this.eventType = eventType;
        this.eventId = eventId;
        this.type = type;
        this.targetId = targetId;
        this.eventTime = eventTime;
        this.status = status;
        this.beforeAttackBlood = beforeAttackBlood;
        this.afterAttackBlood = afterAttackBlood;
        this.damage = damage;
        this.reward = reward;
        this.buffId = buffId;
        this.score = score;
    }

    public long getUserId() {
        return userId;
    }

    public int getActivityId() {
        return activityId;
    }

    public void setActivityId(int activityId) {
        this.activityId = activityId;
    }

    public void setUserId(long userId) {
        this.userId = userId;
    }

    public int getTeamId() {
        return teamId;
    }

    public void setTeamId(int teamId) {
        this.teamId = teamId;
    }

    public int getRegionId() {
        return regionId;
    }

    public void setRegionId(int regionId) {
        this.regionId = regionId;
    }

    public int getEventType() {
        return eventType;
    }

    public void setEventType(int eventType) {
        this.eventType = eventType;
    }

    public int getEventId() {
        return eventId;
    }

    public void setEventId(int eventId) {
        this.eventId = eventId;
    }

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    public long getTargetId() {
        return targetId;
    }

    public void setTargetId(long targetId) {
        this.targetId = targetId;
    }

    public int getEventTime() {
        return eventTime;
    }

    public void setEventTime(int eventTime) {
        this.eventTime = eventTime;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public long getBeforeAttackBlood() {
        return beforeAttackBlood;
    }

    public void setBeforeAttackBlood(long beforeAttackBlood) {
        this.beforeAttackBlood = beforeAttackBlood;
    }

    public long getAfterAttackBlood() {
        return afterAttackBlood;
    }

    public void setAfterAttackBlood(long afterAttackBlood) {
        this.afterAttackBlood = afterAttackBlood;
    }

    public long getDamage() {
        return damage;
    }

    public void setDamage(long damage) {
        this.damage = damage;
    }

    public String getReward() {
        return reward;
    }

    public void setReward(String reward) {
        this.reward = reward;
    }

    public List<Integer> getBuffId() {
        return buffId;
    }

    public void setBuffId(List<Integer> buffId) {
        this.buffId = buffId;
    }

    public long getScore() {
        return score;
    }

    public void setScore(long score) {
        this.score = score;
    }
}
